package com.tom.demo.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.*;

@Data
@ApiModel(value = "添加部门")
public class DeptDto {

    @ApiModelProperty(value = "部门id")
    private String deptId;

    /**
     * 父级id
     */
    @NotNull(message="[父级id]不能为空")
    @ApiModelProperty(value = "父级id",required = true)
    private String parentId;
    /**
     * 部门名称
     */
    @NotBlank(message="[部门名称]不能为空")
    @Size(max= 30,message="编码长度不能超过30")
    @ApiModelProperty(value = "部门名称",required = true)
    @Length(max= 30,message="编码长度不能超过30")
    private String deptName;
    /**
     * 部门编码
     */
    @NotBlank(message="[部门编码]不能为空")
    @Size(max= 10,message="编码长度不能超过10")
    @ApiModelProperty("部门编码")
    @Length(max= 10,message="编码长度不能超过10")
    private String deptCode;
    /**
     * 显示顺序
     */
    @ApiModelProperty(value = "显示顺序",required = true)
    @PositiveOrZero(message = "必须为正整数或0")
    private Integer orderNum;
    /**
     * 负责人
     */
    @Size(max= 30,message="编码长度不能超过30")
    @ApiModelProperty(value = "部门负责人",required = true)
    @Length(max= 30,message="编码长度不能超过30")
    @NotBlank(message="[部门负责人]不能为空")
    private String leader;
    /**
     * 联系电话
     */
    @Size(max= 11,message="编码长度不能超过11")
    @ApiModelProperty(value = "联系电话",required = true)
    @Length(max= 11,message="编码长度不能超过11")
    @NotBlank(message="[联系电话]不能为空")
    private String phone;
    /**
     * 邮箱
     */
    @Size(max= 50,message="编码长度不能超过50")
    @ApiModelProperty(value = "邮箱",required = true)
    @Length(max= 50,message="编码长度不能超过50")
    @NotBlank(message="[邮箱]不能为空")
    private String email;
}
